Saltar al contenido principal

Envío de Correo Electrónico con Node-RED

Este tutorial le muestra cómo configurar notificaciones automáticas por correo electrónico desde su cámara OV80i usando Node-RED. Aprenderá a configurar la integración con Gmail y crear flujos que envíen alertas de inspección, actualizaciones del estado del sistema y notificaciones de fallas directamente a su correo electrónico.

Lo que construirá: Un sistema automatizado de correo electrónico que envía resultados de inspección, alertas y notificaciones del OV80i a destinatarios especificados usando SMTP de Gmail.

Aplicación en el mundo real: Reciba alertas instantáneas por correo cuando las inspecciones fallen, envíe reportes diarios de calidad a la gerencia o notifique a los equipos de mantenimiento sobre problemas del sistema, todo automáticamente desde su sistema de inspección por visión.

Prerrequisitos

  • Cámara OV80i con acceso a Node-RED
  • Cuenta de Gmail para enviar correos
  • Conocimientos básicos de flujos en Node-RED
  • Acceso a la configuración de seguridad de la cuenta de Google

Resumen del Tutorial

Lo que construiremos: Un flujo en Node-RED que envía automáticamente notificaciones por correo con resultados de inspección y alertas del sistema.

Tiempo requerido: 20-30 minutos (incluyendo configuración de Gmail)

Habilidades aprendidas: Configuración de contraseña de aplicación Gmail, configuración SMTP, notificaciones automáticas por correo

Paso 1: Configurar Contraseña de Aplicación de Gmail

1.1 Habilitar Verificación en Dos Pasos

  1. Inicie sesión en su cuenta de Google en accounts.google.com
  2. Haga clic en "Seguridad" en el menú de navegación izquierdo
  3. Ubique la sección "Inicio de sesión en Google"
  4. Haga clic en "Verificación en dos pasos"
  5. Siga las indicaciones para habilitar la verificación en dos pasos si aún no está activada
nota

La verificación en dos pasos es requerida antes de poder crear contraseñas de aplicación.

1.2 Generar Contraseña de Aplicación

  1. Regrese a la página de Seguridad después de habilitar la verificación en dos pasos
  2. Haga clic en "Contraseñas de aplicaciones" (bajo "Inicio de sesión en Google")
  3. Seleccione "Correo" como tipo de aplicación
  4. Seleccione "Otro" como tipo de dispositivo
  5. Ingrese un nombre como "OV80i Node-RED Email"
  6. Haga clic en "Generar"

1.3 Guarde su Contraseña de Aplicación

  1. Copie la contraseña de 16 caracteres que Google muestra
  2. Guárdela de forma segura, la necesitará para la configuración en Node-RED
  3. Nota: Esta contraseña sólo se muestra una vez. Si la pierde, genere una nueva

Punto de control: Debe tener guardada una contraseña de aplicación Gmail de 16 caracteres para usar en Node-RED.

Paso 2: Instalar Nodos de Correo (Si es Necesario)

2.1 Verificar Nodos de Correo

  1. Abra Node-RED en su cámara OV80i
  2. Busque en la paleta izquierda un nodo "email" en la sección de salida
  3. Si no está disponible, deberá instalar el paquete de correo

2.2 Instalar Paquete de Correo (Si es Requerido)

  1. Haga clic en el menú hamburguesa (≡) en Node-RED
  2. Seleccione "Manage palette"
  3. Haga clic en la pestaña "Install"
  4. Busque "node-red-node-email"
  5. Haga clic en "Install" junto al paquete

Paso 3: Crear Flujo Básico de Correo

3.1 Agregar Nodos Requeridos

  1. Navegue a IO Block > Configure I/O para acceder a Node-RED
  2. Arrastre estos nodos desde la paleta al lienzo:
    • Nodo Inject (para pruebas)
    • Nodo Email (de la sección de salida)
  3. Conecte la salida del inject a la entrada del email

3.2 Estructura Básica del Flujo

Inject → Email

Propósito del flujo: Envío simple de correo para pruebas y notificaciones básicas.

image.png

Paso 4: Configurar Contenido del Correo

4.1 Configurar Nodo Inject

  1. Haga doble clic en el nodo inject para abrir propiedades
  2. Configure el payload:
    • Tipo de payload: "string"
    • Valor del payload: Texto del cuerpo del correo (ejemplo: "Alerta de inspección desde OV80i")
  3. Agregar asunto del correo:
    • Haga clic en "+ add" para agregar una propiedad

    • Nombre de la propiedad: "topic"

    • Valor de la propiedad: Asunto del correo (ejemplo: "Alerta de Inspección OV80i")

      image.png

4.2 Ejemplo de Configuración Básica

Payload (cuerpo del correo):

Inspección completada en Estación 1
Estado: Alerta activada
Hora: Verifique la marca de tiempo para detalles

Topic (asunto del correo):

Alerta de Inspección OV80i - Estación 1

4.3 Guardar Configuración del Inject

  1. Asigne un nombre al nodo como "Disparador de Correo"
  2. Haga clic en "Done" para guardar la configuración

Paso 5: Configurar Ajustes SMTP del Correo

5.1 Configurar Nodo Email

  1. Haga doble clic en el nodo email para abrir propiedades
  2. Configure ajustes básicos:
    • Nombre: "Enviar Alerta por Correo" (o nombre descriptivo)
    • Para: Dirección de correo del destinatario (ejemplo: quality@company.com)

5.2 Configurar SMTP de Gmail

  1. Servidor: smtp.gmail.com
  2. Puerto: 465
  3. Marque "Usar conexión segura"
  4. Tipo de autenticación: Basic
  5. Usuario: Su dirección completa de Gmail (ejemplo: alerts@company.com)
  6. Contraseña: La contraseña de aplicación de 16 caracteres del Paso 1

5.3 Ajustes de Seguridad

  1. Marque "Verificar que el certificado del servidor sea válido"
  2. Verifique que todos los ajustes estén correctos
  3. Haga clic en "Done" para guardar la configuración del nodo email

Punto de control: Su nodo email no debe mostrar indicadores de error y debe mostrar la dirección del destinatario.

image.png

Paso 6: Probar su Flujo de Correo

6.1 Desplegar y Probar

  1. Haga clic en el botón "Deploy" en la esquina superior derecha
  2. Espere el mensaje "Successfully deployed"
  3. Haga clic en el botón del nodo inject (cuadro gris a la izquierda)

6.2 Verificar Entrega del Correo

  1. Revise el correo del destinatario para el mensaje de prueba
  2. Revise la carpeta de spam si el correo no aparece en la bandeja de entrada
  3. Busque mensajes de error en el panel de debug de Node-RED

6.3 Solución de Problemas Si es Necesario

Problemas comunes:

  • Contraseña de aplicación incorrecta: Regenerar la contraseña de aplicación Gmail
  • Configuración SMTP: Verificar que servidor y puerto sean correctos
  • Firewall: Asegurar que el tráfico SMTP saliente esté permitido

Paso 7: Integración con Resultados de Inspección

7.1 Conectar al Flujo de Inspección

Para enviar correos basados en resultados de inspección:

  1. Ubique su flujo principal de inspección (comienza con "All Block Outputs")
  2. Agregue su flujo de correo como una rama desde el procesamiento de inspección
  3. Conecte después de la lógica de inspección pero en paralelo a los resultados finales

7.2 Ejemplo de Flujo de Integración

All Block Outputs → [Lógica de Inspección] → Resultado Final Pass/Fail

Formatear Correo → Enviar Correo

image.png

7.3 Contenido Dinámico del Correo

Reemplace el nodo inject con un nodo function para contenido dinámico:

// Correo dinámico basado en resultados de inspección
const result = msg.payload.result ? "PASSED" : "FAILED";
const timestamp = new Date().toLocaleString();
const station = global.get("station_name") || "Estación Desconocida";

// Asunto del correo
msg.topic = `Inspección ${result} - ${station}`;

// Cuerpo del correo
msg.payload = `Reporte de Inspección:
Estado: ${result}
Estación: ${station}
Hora: ${timestamp}
Imagen: ${msg.payload.image_url || "No hay imagen disponible"}

Por favor revise y tome las acciones correspondientes.`;

return msg;

Paso 8: Ejemplo Completo de Flujo

8.1 Importar Flujo Listo para Usar

Puede importar este JSON completo del flujo:

[
{
"id": "email_node_1",
"type": "e-mail",
"name": "Enviar Alerta de Inspección",
"server": "smtp.gmail.com",
"port": "465",
"secure": true,
"authtype": "BASIC",
"to": "quality@company.com"
},
{
"id": "format_email",
"type": "function",
"name": "Formatear Contenido de Correo",
"func": "const result = msg.payload.result ? 'PASSED' : 'FAILED';\nmsg.topic = `Inspección ${result}`;\nmsg.payload = `Estado: ${result}\\nHora: ${new Date()}`;\nreturn msg;"
}
]

8.2 Personalizar para Sus Necesidades

  1. Actualice las direcciones de correo para su organización
  2. Modifique el contenido del correo para sus requerimientos específicos
  3. Ajuste los tiempos y condiciones de disparo
  4. Pruebe exhaustivamente antes de desplegar en producción

Solución de Problemas

Problemas Comunes

ProblemaSíntomasSolución
Fallo de autenticaciónErrores "Login failed"Verifique que la contraseña de aplicación sea correcta y que la verificación en dos pasos esté habilitada
Tiempo de espera agotadoNo se envía correo, errores de timeoutRevise configuración de firewall, verifique servidor SMTP y puerto
Correos en spamCorreos entregados pero en carpeta de spamAgregue remitente a lista segura, mejore contenido del correo
Flujo no se disparaNo hay salida en debugVerifique conexiones del flujo y condiciones de disparo

Depure su Flujo de Correo

  1. Agregue nodos debug después de cada paso para rastrear datos
  2. Revise los logs de Node-RED para mensajes de error detallados
  3. Pruebe configuración SMTP con clientes de correo externos si es necesario
  4. Verifique conectividad de red desde la cámara a los servidores de Gmail

¡Éxito! Su Integración de Correo Está Completa

Su cámara OV80i ahora puede:

Enviar notificaciones automáticas por correo para resultados de inspección

Entregar mensajes enriquecidos y formateados con detalles de inspección

Soportar múltiples destinatarios y flujos de escalamiento

Proporcionar reportes programados y resúmenes

Manejar mensajes condicionales basados en resultados de inspección

Mejores Prácticas

Gestión de Correos

  • Use asuntos descriptivos con indicadores claros de estado
  • Mantenga mensajes concisos pero informativos
  • Incluya marcas de tiempo e identificadores de estación
  • Proporcione información accionable en las notificaciones

Seguridad y Confiabilidad

  • Proteja las contraseñas de aplicación - guárdelas de forma segura y rote regularmente
  • Use cuentas de correo dedicadas para notificaciones del sistema
  • Pruebe la entrega de correos regularmente para asegurar confiabilidad
  • Monitoree fallas de entrega y tenga métodos de notificación alternativos

Consideraciones de Rendimiento

  • Limite la frecuencia de correos para evitar detección como spam
  • Use listas de destinatarios adecuadas para diferentes tipos de alertas
  • Implemente limitación de tasa para sistemas de alto volumen
  • Considere el tamaño del correo al incluir adjuntos grandes

Próximos Pasos

Después de configurar las notificaciones por correo:

  1. Cree plantillas de correo para diferentes tipos de alertas
  2. Configure listas de distribución para diversos interesados
  3. Implemente flujos de escalamiento para problemas críticos
  4. Cree reportes programados para la gerencia
  5. Integre con otros sistemas de notificación (SMS, Teams, etc.)

🔗 Véase También